<?php
/**
 * @Time: 2020/3/18 11:00
 * @DESC: 836. 矩形重叠
 * 矩形以列表 [x1, y1, x2, y2] 的形式表示，其中 (x1, y1) 为左下角的坐标，(x2, y2) 是右上角的坐标。
 * 如果相交的面积为正，则称两矩形重叠。需要明确的是，只在角或边接触的两个矩形不构成重叠。
 * 给出两个矩形，判断它们是否重叠并返回结果。
 * 重叠返回true，否则返回false
 * @param $rec1
 * @param $rec2
 * @return bool
 */
function isRectangleOverlap($rec1,$rec2){
    if ($rec2[2] <= $rec1[0] ||
        $rec2[1] >= $rec1[3] ||
        $rec2[0] >= $rec1[2] ||
        $rec2[3] <= $rec1[1]
    ) return false;

    return true;
}

$rec1 = [0,0,1,1];
$rec2 = [1,0,2,1];
var_dump(isRectangleOverlap($rec1,$rec2));

###
# 果然是很考验数学图形的一道题
# 找相邻的临边所需要的条件
# $rec2[2] <= $rec1[0] 第二个方块在第一个方块的左边，也就是第二个方块的右边(x2)挨着第一个方块的左边(x1)
# $rec2[1] >= $rec1[3] 第二个方块在第一个方块的上边，也就是第二个方块的下边(y1)挨着第一个方块的上边(y2)
# $rec2[0] >= $rec1[2] 第二个方块在第一个方块的右边，也就是第二个方块的左边(x1)挨着第一个方块的右边(x2)
# $rec2[3] <= $rec1[1] 第二个方块在第一个方块的下边，也就是第二个方块的上边(y2)挨着第一个方块的下边(y1)